package com.vision.sales.cl.data;

import java.util.Date;

import com.google.gwt.core.client.GWT;
import com.google.gwt.editor.client.Editor.Path;
import com.sencha.gxt.core.client.ValueProvider;
import com.sencha.gxt.data.shared.LabelProvider;
import com.sencha.gxt.data.shared.ModelKeyProvider;
import com.sencha.gxt.data.shared.PropertyAccess;
import com.vision.core.cm.db.data.Company;
import com.vision.sales.cm.db.data.AdvancePayment;
import com.vision.sales.cm.db.data.Customer;

public interface AdvancePaymentProperties extends PropertyAccess<AdvancePayment> {
	
	public static final AdvancePaymentProperties INSTANCE = GWT.create(AdvancePaymentProperties.class);
	
	@Path("id")
	ModelKeyProvider<AdvancePayment> key();

	@Path("advancePaymentNo")
	LabelProvider<AdvancePayment> nameLabel();

	ValueProvider<AdvancePayment, Company> company();
	
	@Path("company.code")
	ValueProvider<AdvancePayment, String> companyCode();
	
	ValueProvider<AdvancePayment, Long> id();

	ValueProvider<AdvancePayment, String> advancePaymentNo();

	ValueProvider<AdvancePayment, Date> date();

	ValueProvider<AdvancePayment, Double> amount();
	
	ValueProvider<AdvancePayment, Double> balance();

	ValueProvider<AdvancePayment, Customer> customer();
	
	@Path("customer.code")
	ValueProvider<AdvancePayment, String> customerCode();
	
	ValueProvider<AdvancePayment, String> remarks();
	
}